<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en" xml:lang="en" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<head>
<META http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Example: Architectural Mechanism Attributes</title>
<meta name="uma.type" content="Example">
<meta name="uma.name" content="architectural_mechanism_attributes">
<meta name="uma.presentationName" content="Architectural Mechanism Attributes">
<meta name="element_type" content="example">
<meta name="filetype" content="description">
<meta name="role" content="">
<link rel="StyleSheet" href="./../../../css/default.css" type="text/css">
<script src="./../../../scripts/ContentPageResource.js" type="text/javascript" language="JavaScript"></script><script src="./../../../scripts/ContentPageSection.js" type="text/javascript" language="JavaScript"></script><script src="./../../../scripts/ContentPageSubSection.js" type="text/javascript" language="JavaScript"></script><script src="./../../../scripts/ContentPageToolbar.js" type="text/javascript" language="JavaScript"></script><script src="./../../../scripts/contentPage.js" type="text/javascript" language="JavaScript"></script><script type="text/javascript" language="JavaScript">
					var backPath = './../../../';
					var imgPath = './../../../images/';
					var nodeInfo=null;
					contentPage.preload(imgPath, backPath, nodeInfo,  '', false, false, false);
				</script>
</head>
<body>
<div id="breadcrumbs"></div>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td valign="top"><a name="Top"></a>
<div id="page-guid" value="_eQ_s8Om5Edupia_tZIXEqg"></div>
<table border="0" cellspacing="0" cellpadding="0" width="100%">
<tr>
<td class="pageTitle" nowrap="true">Example: Architectural Mechanism Attributes</td><td width="100%">
<div align="right" id="contentPageToolbar"></div>
</td><td width="100%" class="expandCollapseLink" align="right"><a name="mainIndex" href="./../../../index.htm"></a><script language="JavaScript" type="text/javascript" src="./../../../scripts/treebrowser.js"></script></td>
</tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td class="pageTitleSeparator"><img src="./../../../images/shim.gif" alt="" title="" height="1"></td>
</tr>
</table>
<div class="overview">
<table width="97%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="50"><img src="./../../../images/example.gif" alt="" title=""></td><td>
<table class="overviewTable" border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top">This example illustrates how to represent attributes for Architecture Mechanisms.</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
<div class="sectionHeading">Relationships</div>
<div class="sectionContent">
<table class="sectionTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<th class="sectionTableHeading" scope="row">Related Elements</th><td class="sectionTableCell">
<ul>
<li>
<a href="./../../../core.tech.common.extend_supp/guidances/concepts/analysis_mechanism_8369C159.html" guid="_0gvqoMlgEdmt3adZL5Dmdw">Analysis Mechanism</a>
</li>
<li>
<a href="./../../../core.tech.common.extend_supp/guidances/concepts/arch_mechanism_2932DFB6.html" guid="_mzxI0A4LEduibvKwrGxWxA">Architectural Mechanism</a>
</li>
</ul>
</td>
</tr>
</table>
</div>
<div class="sectionHeading">Description</div>
<div class="sectionContent">
<table class="sectionTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<th class="sectionTableHeading" scope="row">Main Description</th><td class="sectionTableCell"><p>
    The following shows an example of how to capture information for <a class="elementLink" href="./../../../core.tech.common.extend_supp/guidances/concepts/arch_mechanism_2932DFB6.html" guid="_mzxI0A4LEduibvKwrGxWxA">Architectural Mechanism</a>. The attributes of two possible mechanisms are shown:
    Persistence and Communication.
</p>
<h1>
    Persistence
</h1>
<p>
    For all classes with instances that may become persistent, you need to identify:
</p>
<ul>
    <li>
        <p>
            <b>Granularity</b><b>:</b> What is the range of size of the objects to keep persistent?
        </p>
    </li>
    <li>
        <p>
            <b>Volume</b><b>:</b> How many objects (number) do you need to keep persistent?
        </p>
    </li>
    <li>
        <p>
            <b>Duration</b><b>:</b> How long does the object typically need to be kept?
        </p>
    </li>
    <li>
        <p>
            <b>Retrieval mechanism</b><b>:</b> How is a given object uniquely identified and retrieved?
        </p>
    </li>
    <li>
        <p>
            <b>Update frequency</b><b>:</b> Are the objects more or less constant? Are they permanently updated?
        </p>
    </li>
    <li>
        <p>
            <b>Reliability</b><b>:</b> Do the objects need to survive a crash of the process, the processor, or the whole
            system?
        </p>
    </li>
</ul>
<h1>
    Communication
</h1>
<p>
    For all model elements that need to communicate with components or services that are running in other processes or
    threads, you need to identify:
</p>
<ul>
    <li>
        <p>
            <b>Latency</b><b>:</b> How fast must processes communicate with another?
        </p>
    </li>
    <li>
        <p>
            <b>Synchronicity</b><b>:</b> Asynchronous communication
        </p>
    </li>
    <li>
        <p>
            <b>Size of message</b><b>:</b> A spectrum might be more appropriate than a single number
        </p>
    </li>
    <li>
        <p>
            <b>Protocol:</b> Flow control, buffering, and so on
        </p>
    </li>
</ul>
<p>
    Notice that there is no design-level information or specification here. Instead, this is more about collating and
    refining architecturally significant requirements.
</p></td>
</tr>
</table>
</div>
<table class="copyright" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="copyright"><p> This program and the accompanying materials are made available under the<br />
  <a href="http://www.eclipse.org/org/documents/epl-v10.php" target="_blank">Eclipse 
  Public License V1.0</a>, which accompanies this distribution. </p><p/><p> <a class="elementLink" href="./../../../core.default.release_copyright.base/guidances/supportingmaterials/openup_copyright_C3031062.html" guid="_UaGfECcTEduSX6N2jUafGA">OpenUP Copyright</a></p></td>
</tr>
</table>
</td>
</tr>
</table>
</body>
<script type="text/javascript" language="JavaScript">
				contentPage.onload();
			</script>
</html>
